﻿using System;
using System.Collections.Generic;
using VNet.VisiSuite.ExcelReader.ExcelReaderFactory;

namespace VNet.VisiSuite.ExcelReader.Models
{
    /// <summary>
    /// ProductData
    /// </summary>
    public class ProductionPlanData : IExcelData
    {
        /// <summary>
        /// Gets or sets the items.
        /// </summary>
        /// <value>
        /// The items.
        /// </value>
        public List<ProductionPlanModelItem> Items { get; set; }
    }

    /// <summary>
    /// Product Model
    /// </summary>
    public class ProductionPlanModelItem
    {
        /// <summary>
        /// Gets or sets the production plan identifier.
        /// </summary>
        /// <value>
        /// The production plan identifier.
        /// </value>
        public int ProductionPlanId { get; set; }

        /// <summary>
        /// Gets or sets the cell identifier.
        /// </summary>
        /// <value>
        /// The cell identifier.
        /// </value>
        public string CellName { get; set; }

        /// <summary>
        /// Gets or sets the product identifier.
        /// </summary>
        /// <value>
        /// The product identifier.
        /// </value>
        public string Sku { get; set; }

        /// <summary>
        /// Gets or sets the braider product identifier.
        /// </summary>
        /// <value>
        /// The braider product identifier.
        /// </value>
        public string BraiderProductName { get; set; }

        /// <summary>
        /// Gets or sets the work order.
        /// </summary>
        /// <value>
        /// The work order.
        /// </value>
        public string WorkOrder { get; set; }

        /// <summary>
        /// Gets or sets the due date.
        /// </summary>
        /// <value>
        /// The due date.
        /// </value>
        public DateTime DueDate { get; set; }

        /// <summary>
        /// Gets or sets the planned.
        /// </summary>
        /// <value>
        /// The planned.
        /// </value>
        public int Planned { get; set; }

        /// <summary>
        /// Gets or sets the actual.
        /// </summary>
        /// <value>
        /// The actual.
        /// </value>
        public int Actual { get; set; }

        /// <summary>
        /// Gets or sets the sort order.
        /// </summary>
        /// <value>
        /// The sort order.
        /// </value>
        public int SortOrder { get; set; }

        /// <summary>
        /// Gets or sets a value indicating whether [closed].
        /// </summary>
        /// <value>
        ///   <c>true</c> if [closed]; otherwise, <c>false</c>.
        /// </value>
        public bool Closed { get; set; }

        /// <summary>
        /// Gets or sets a value indicating whether [enabled].
        /// </summary>
        /// <value>
        ///   <c>true</c> if [enabled]; otherwise, <c>false</c>.
        /// </value>
        public bool Enabled { get; set; }
    }
}
